package com.bizfx.component.controls.validators
{
	import mx.validators.ValidationResult;
	import mx.validators.Validator;
	
	public class ComboBoxValidator extends Validator
	{
		//如果开发者把一个自定义的项目推进ComboBox的数组中(这种情况我见过不少)   
		//我们就会把这个项跟已选取的项进行对比。   
		public var prompt:String;   
		public function ComboBoxValidator() {   
			super();   
		}   

		/**
		 * 在这里我们进行两个检查: 
		 * 1. comboBox中有没有项目被选中
		 * 2. 开发者有没有为comboBox加入自定义的项目
		 * 任何一个条件为ture的话, 则返回一个错误
		 */
		override protected function doValidation(value:Object):Array   
		{   
			var results:Array = [];
			if (this.required) {
				if(value as String == prompt || value == null) {   
					var res:ValidationResult = new ValidationResult(true, "", "", this.requiredFieldError);   
					results.push(res);   
				} 	
			}  
			return results;   
		}  
	}
}